'use strict';

const videoServiceUtil = require('./serviceUtil/videoServiceUtil');

const videoService = {};

/**
 * 创建用户视频文档
 *
 * @author 王俊
 * @date 2018-08-07
 *
 * @param {Object} options
 * @param {Number} options.device       设备编号见接口文档
 * @param {Number} [options.no]           平台编号, 主要用于小程序
 * @param {Number} options.opType       1 竖屏(单页/印品等)  2 视频  3 PPT, 4 自由创建, 5 文字转视频
 * @param {Number} options.userId       用户唯一标识
 * @param {Number} [options.sizeId]     作品尺寸id, opType 为 4, 5 时需传递
 * @param {Number} [options.tmplId]     作品对应模板id, 当 opType 为 2 时需传递
 * @param {String} options.docString    作品对应的文档 json 字符串
 *
 * @param {Function} callback 回调函数
 *                      error: 失败
 *                      data: {
 *                          docId: 统一作品标识
 *                          productId: 作品子表标识
 *                      }
 */
videoService.createVideoUserDoc = function(options, callback) {
    videoServiceUtil.createVideoUserDoc(options, callback);
};










/**
 * 修改文字视频文档
 *
 * @author 毛凯
 * @date 2018-08-07
 *
 * @param {Object} options
 * @param {Number} options.device       设备标识
 * @param {Number} options.opType       1 竖屏(单页/印品等)  2 视频  3 PPT, 4 自由创建, 5 文字转视频
 * @param {Number} options.userId       用户唯一标识
 * @param {Number} options.docId       统一的作品id
 * @param {String} options.docJson    文档结构, 参见项目
 *
 * @param {Function} callback 回调函数
 *                      error: 失败
 *                      data: {
 *                            // 作品唯一标志(统一作品标识)
 *                           "docId": 1233,
 *                           // 作品唯一标志(子表标识)
 *                           "product": 78,
 *                      }
 */
videoService.updateVideoDoc = function(options, callback) {
    videoServiceUtil.updateVideoDoc(options, callback);
};



/**
 * 203-获取文字视频预览
 *
 * @author 毛凯
 * @date 2018-08-07
 *
 * @param {Object} options
 * @param {Number} options.device      设备标识
 * @param {Number} options.docId       作品统一模板id
 * @param {Number} [options.userId]     可选参数  用户唯一标识
 * @param {Function} callback 回调函数
 *                      error: 失败
 *                      data: {
 *                         "id":4903,                  // 作品唯一标识
 *                           "opType":5,                 // 业务分类, 暂定如下: 1 竖屏(单页/印品等)  2 视频  3 PPT, 4 自由创建, 5 文字转视频
 *                           "docNm":"欢度国庆",         // 作品名称
 *                           "createDay" : "2017-11-05", // 作品创建日期
 *                           "video":{                  // 当作品使用视频展示时返回此字段, 若作品需要使用图片展示时此字段为空
 *                               "thumbs":[              // 视频缩略图
 *                                 "http://itbour-generate.oss-cn-hangzhou.aliyuncs.com/image/U30330/2016/11/06/091954617_IqjCfwBAzWz7I683nMRf/0.jpg"
 *                               ],
 *                               "videoUrl" : "http://itbour-generate.oss-cn-hangzhou.aliyuncs.com/image/U30330/2016/11/06/091954617_IqjCfwBAzWz7I683nMRf/0.mp4",
 *                               "duration" : 100,       // 视频时长, 单位:秒
 *                               "videoSize" : 4093200,  // 视频文件大小, 单位: Byte, 前端计算使用1000做进制转换, 避免出现流量显示与使用不一致的情况
 *                               "w":720,
 *                               "h":1280,
 *                           },
 *                      }
 */
videoService.getTextVideoPreview = function(options, callback) {
    videoServiceUtil.getTextVideoPreview(options, callback);
};



/**
 * 获取文字视频文档内容
 *
 * @author 毛凯
 * @date 2018-08-07
 *
 * @param {Object} options
 * @param {Number} options.device      设备标识
 * @param {Number} options.docId       作品统一模板id
 * @param {Number} options.userId      用户唯一标识
 * @param {Function} callback 回调函数
 *                      error: 失败
 *                      data: {
 *                         "id":4903,                  // 作品唯一标识
 *                           "opType":5,                 // 业务分类, 暂定如下: 1 竖屏(单页/印品等)  2 视频  3 PPT, 4 自由创建, 5 文字转视频
 *                           "docNm":"欢度国庆",         // 作品名称
 *                           "createDay" : "2017-11-05", // 作品创建日期
 *                           "video":{                  // 当作品使用视频展示时返回此字段, 若作品需要使用图片展示时此字段为空
 *                               "thumbs":[              // 视频缩略图
 *                                 "http://itbour-generate.oss-cn-hangzhou.aliyuncs.com/image/U30330/2016/11/06/091954617_IqjCfwBAzWz7I683nMRf/0.jpg"
 *                               ],
 *                               "videoUrl" : "http://itbour-generate.oss-cn-hangzhou.aliyuncs.com/image/U30330/2016/11/06/091954617_IqjCfwBAzWz7I683nMRf/0.mp4",
 *                               "duration" : 100,       // 视频时长, 单位:秒
 *                               "videoSize" : 4093200,  // 视频文件大小, 单位: Byte, 前端计算使用1000做进制转换, 避免出现流量显示与使用不一致的情况
 *                               "w":720,
 *                               "h":1280,
 *                           },
 *                      }
 */
videoService.getVideoContent = function(options, callback) {
    videoServiceUtil.getVideoContent(options, callback);
};




module.exports = videoService;
